using System;
using System.Collections.Generic;
using System.Text;
using FlatRedBall;
using FlatRedBall.Input;
using FlatRedBall.AI.Pathfinding;
using FlatRedBall.Graphics.Animation;
using FlatRedBall.Graphics.Particle;

using FlatRedBall.Math.Geometry;
using FlatRedBall.Math.Splines;
using BitmapFont = FlatRedBall.Graphics.BitmapFont;
using Cursor = FlatRedBall.Gui.Cursor;
using GuiManager = FlatRedBall.Gui.GuiManager;

#if FRB_XNA || SILVERLIGHT
using Keys = Microsoft.Xna.Framework.Input.Keys;
using Vector3 = Microsoft.Xna.Framework.Vector3;
using Texture2D = Microsoft.Xna.Framework.Graphics.Texture2D;


#endif

namespace Gnome.Entities
{
	public partial class HUD
	{
		private void CustomInitialize()
		{
            
		}

		private void CustomActivity()
		{


		}

		private void CustomDestroy()
		{


		}

        public void SetupDigits(string ContentManagerName)
        {
            //Make four number digits for the score
            for (int i = 0; i < 4; i++)
            {
                HudNumber digit = new HudNumber(ContentManagerName, true);
                digit.Position.X = 389 + i * 16f;
                digit.Position.Y = 350;
                ScoreDigits.Add(digit);
            }
            //Make two number digits for the multiplier
            for (int i = 0; i < 2; i++)
            {
                HudNumber digit = new HudNumber(ContentManagerName, true);
                digit.Position.X = 472 + i * 14f;
                digit.Position.Y = 347;
                Multiplier.Add(digit);
            }
            //Make four small numbers for the bag value
            for (int i = 0; i < 4; i++)
            {
                HudNumber digit = new HudNumber(ContentManagerName, true);
                digit.Position.X = 336 + i * 14.5f;
                digit.Position.Y = 316;
                BagValue.Add(digit);
            }
            //Make two small numbers for the current weight
            for (int i = 0; i < 2; i++)
            {
                HudNumber digit = new HudNumber(ContentManagerName, true);
                digit.Position.X = 406 + i * 14f;
                digit.Position.Y = 315;
                CurrentWeight.Add(digit);
            }
            //Make two small numbers for the Max Weight
            for (int i = 0; i < 2; i++)
            {
                HudNumber digit = new HudNumber(ContentManagerName, true);
                digit.Position.X = 436 + i * 14f;
                digit.Position.Y = 315;
                MaxWeight.Add(digit);
            }
            //Make two medium numbers for the timer
            for (int i = 0; i < 2; i++)
            {
                HudNumber digit = new HudNumber(ContentManagerName, true);
                digit.Position.X = -27 + i * 27f;
                digit.Position.Y = 315;
                Timer.Add(digit);
            }
        }

        public void SetupSecondDigits(string ContentManagerName)
        {
            //Make four number digits for the score
            for (int i = 0; i < 4; i++)
            {
                HudNumber digit = new HudNumber(ContentManagerName, true);
                digit.Position.X = 389 - 780 + i * 16f;
                digit.Position.Y = 350;
                ScoreDigits.Add(digit);
            }
            //Make two number digits for the multiplier
            for (int i = 0; i < 2; i++)
            {
                HudNumber digit = new HudNumber(ContentManagerName, true);
                digit.Position.X = 472 - 780 + i * 14f;
                digit.Position.Y = 347;
                Multiplier.Add(digit);
            }
            //Make four small numbers for the bag value
            for (int i = 0; i < 4; i++)
            {
                HudNumber digit = new HudNumber(ContentManagerName, true);
                digit.Position.X = 336 - 780 + i * 14.5f;
                digit.Position.Y = 316;
                BagValue.Add(digit);
            }
            //Make two small numbers for the current weight
            for (int i = 0; i < 2; i++)
            {
                HudNumber digit = new HudNumber(ContentManagerName, true);
                digit.Position.X = 406 - 780 + i * 14f;
                digit.Position.Y = 315;
                CurrentWeight.Add(digit);
            }
            //Make two small numbers for the Max Weight
            for (int i = 0; i < 2; i++)
            {
                HudNumber digit = new HudNumber(ContentManagerName, true);
                digit.Position.X = 436 - 780 + i * 14f;
                digit.Position.Y = 315;
                MaxWeight.Add(digit);
            }
        }

        public void ScaleDigits()
        {
            int i = 0;
            foreach (HudNumber digit in ScoreDigits)
            {
                digit.Number.ScaleX = 7;
                digit.Number.ScaleY = 12;
                digit.Position.X = X -4 + i * 18f;
                digit.Position.Y = Y + 18;
                i++;
            }
        }

        private static void CustomLoadStaticContent(string contentManagerName)
        {


        }
	}
}
